#ifndef _DAL_KERNEL_H_
#define _DAL_KERNEL_H_
#ifdef __cplusplus
extern "C" {
#endif


#define CTC_MAX_INTR_NUM 4

#define DAL_NAME          "linux_dal"  /* "linux_dal" */

#define DAL_DEV_MAJOR     198

#define DAL_DEV_INTR_MAJOR_BASE     210

#define DAL_DEV_NAME      "/dev/" DAL_NAME


struct dal_intr_info_s
{
    unsigned int irq;
    unsigned int irq_idx;
};
typedef struct dal_intr_info_s dal_intr_info_t;


struct dal_intr_parm_s
{
    unsigned int irq;
    unsigned int enable;
};
typedef struct dal_intr_parm_s dal_intr_parm_t;

#define CMD_MAGIC 'C'
#define CMD_REG_INTERRUPTS          _IO(CMD_MAGIC, 0)
#define CMD_UNREG_INTERRUPTS        _IO(CMD_MAGIC, 1)
#define CMD_EN_INTERRUPTS           _IO(CMD_MAGIC, 2)
#define CMD_GET_INTR_INFO           _IO(CMD_MAGIC, 3)

#ifdef __cplusplus
}
#endif

#endif

